package com.mall4j.cloud.product.dto;

import com.mall4j.cloud.api.product.vo.SkuVO;
import com.mall4j.cloud.api.product.vo.SpuAttrValueVO;
import io.swagger.annotations.ApiModelProperty;

import java.util.List;

/**
 * spu
 *
 * @author JCM
 * @date 2021-04-27 15:33:00
 */
public class SpuDTO {
    private static final long serialVersionUID = 1L;

    @ApiModelProperty("主键")
    private Long spuId;

    @ApiModelProperty("品牌id")
    private Long brandId;

    @ApiModelProperty("分类id")
    private Long categoryId;

    @ApiModelProperty("店铺分类id")
    private Long shopCategoryId;

    @ApiModelProperty("店铺id")
    private Long shopId;

    @ApiModelProperty("商品名称")
    private String name;

    @ApiModelProperty("卖点")
    private String sellingPoint;

    @ApiModelProperty("商品介绍主图")
    private String mainImgUrl;

    @ApiModelProperty("商品图片，多个图片逗号分隔")
    private String imgUrls;

    @ApiModelProperty("商品视频")
    private String video;

    @ApiModelProperty("售价，整数方式保存")
    private Long priceFee;

    @ApiModelProperty("市场价，整数方式保存")
    private Long marketPriceFee;

    @ApiModelProperty("累计销量")
    private Long scoreFee;

    @ApiModelProperty("状态 -1：删除 0：下架 1：上架")
    private Integer status;

    @ApiModelProperty("sku是否含有图片 0：无 1：有")
    private Integer hasSkuImg;

    @ApiModelProperty("序号")
    private Integer seq;

    @ApiModelProperty("规格属性")
    private List<SpuAttrValueVO> spuAttrValues;

    @ApiModelProperty("sku列表")
    private List<SkuVO> skuList;

    @ApiModelProperty("是否组成")
    private Integer isCompose;

    @ApiModelProperty("总库存")
    private Integer totalStock;

    @ApiModelProperty("商品详情")
    private String detail;

    public Long getSpuId() {
        return spuId;
    }

    public void setSpuId(Long spuId) {
        this.spuId = spuId;
    }

    public Long getBrandId() {
        return brandId;
    }

    public void setBrandId(Long brandId) {
        this.brandId = brandId;
    }

    public Long getCategoryId() {
        return categoryId;
    }

    public void setCategoryId(Long categoryId) {
        this.categoryId = categoryId;
    }

    public Long getShopCategoryId() {
        return shopCategoryId;
    }

    public void setShopCategoryId(Long shopCategoryId) {
        this.shopCategoryId = shopCategoryId;
    }

    public Long getShopId() {
        return shopId;
    }

    public void setShopId(Long shopId) {
        this.shopId = shopId;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getSellingPoint() {
        return sellingPoint;
    }

    public void setSellingPoint(String sellingPoint) {
        this.sellingPoint = sellingPoint;
    }

    public String getMainImgUrl() {
        return mainImgUrl;
    }

    public void setMainImgUrl(String mainImgUrl) {
        this.mainImgUrl = mainImgUrl;
    }

    public String getImgUrls() {
        return imgUrls;
    }

    public void setImgUrls(String imgUrls) {
        this.imgUrls = imgUrls;
    }

    public String getVideo() {
        return video;
    }

    public void setVideo(String video) {
        this.video = video;
    }

    public Long getPriceFee() {
        return priceFee;
    }

    public void setPriceFee(Long priceFee) {
        this.priceFee = priceFee;
    }

    public Long getMarketPriceFee() {
        return marketPriceFee;
    }

    public void setMarketPriceFee(Long marketPriceFee) {
        this.marketPriceFee = marketPriceFee;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public Integer getHasSkuImg() {
        return hasSkuImg;
    }

    public void setHasSkuImg(Integer hasSkuImg) {
        this.hasSkuImg = hasSkuImg;
    }

    public Integer getSeq() {
        return seq;
    }

    public void setSeq(Integer seq) {
        this.seq = seq;
    }

    public Integer getIsCompose() {
        return isCompose;
    }

    public void setIsCompose(Integer isCompose) {
        this.isCompose = isCompose;
    }

    public Integer getTotalStock() {
        return totalStock;
    }

    public void setTotalStock(Integer totalStock) {
        this.totalStock = totalStock;
    }

    public String getDetail() {
        return detail;
    }

    public void setDetail(String detail) {
        this.detail = detail;
    }

    public List<SpuAttrValueVO> getSpuAttrValues() {
        return spuAttrValues;
    }

    public void setSpuAttrValues(List<SpuAttrValueVO> spuAttrValues) {
        this.spuAttrValues = spuAttrValues;
    }

    public List<SkuVO> getSkuList() {
        return skuList;
    }

    public void setSkuList(List<SkuVO> skuList) {
        this.skuList = skuList;
    }

    public Long getScoreFee() {
        return scoreFee;
    }

    public void setScoreFee(Long scoreFee) {
        this.scoreFee = scoreFee;
    }

    @Override
    public String toString() {
        return "SpuDTO{" +
                "spuId=" + spuId +
                ", brandId=" + brandId +
                ", categoryId=" + categoryId +
                ", shopCategoryId=" + shopCategoryId +
                ", shopId=" + shopId +
                ", name='" + name + '\'' +
                ", sellingPoint='" + sellingPoint + '\'' +
                ", mainImgUrl='" + mainImgUrl + '\'' +
                ", imgUrls='" + imgUrls + '\'' +
                ", video='" + video + '\'' +
                ", priceFee=" + priceFee +
                ", marketPriceFee=" + marketPriceFee +
                ", scoreFee=" + scoreFee +
                ", status=" + status +
                ", hasSkuImg=" + hasSkuImg +
                ", seq=" + seq +
                ", spuAttrValues=" + spuAttrValues +
                ", skus=" + skuList +
                ", isCompose=" + isCompose +
                ", totalStock=" + totalStock +
                ", detail='" + detail + '\'' +
                '}';
    }
}
